home *** CD-ROM | disk | FTP | other *** search
/ PC Answers 2003 September / PC Answers September 2003.iso / Software / freeware / pixeltoolbox / Setup.exe / Main / PixelToolbox.exe / PixelToolbox.dxr / Scripts_31_popup - clone tool.ls < prev    next >
Encoding:
Text File  |  2002-06-08  |  2.8 KB  |  112 lines

  1. property pSpriteList, pMemberList, pPressed, pMySprite, pMyMember, pMyMember2, pMyMember3
  2. global gCast, gClonerMask, gClonerSize, gClonerShape
  3.  
  4. on beginSprite me
  5.   pMySprite = sprite(me.spriteNum)
  6.   pMyMember = pMySprite.memberNum
  7.   pMyMember2 = pMyMember - 1
  8.   pMyMember3 = pMyMember + 1
  9.   pMemberList = [:]
  10.   repeat with i in pSpriteList
  11.     addProp(pMemberList, i, sprite(i).member.name)
  12.   end repeat
  13.   hidePopup(me)
  14.   gClonerMask = 0
  15.   gClonerSize = 1
  16.   gClonerShape = #rect
  17. end
  18.  
  19. on mouseWithin me
  20.   set the memberNum of sprite pMySprite to pMyMember3
  21.   put "Click to select another cloner type." into field "status"
  22. end
  23.  
  24. on mouseLeave me
  25.   set the memberNum of sprite pMySprite to pMyMember
  26.   put EMPTY into field "status"
  27. end
  28.  
  29. on mouseDown me
  30.   pPressed = 1
  31. end
  32.  
  33. on mouseUp me
  34.   set the memberNum of sprite pMySprite to pMyMember3
  35.   liftUp(me)
  36. end
  37.  
  38. on mouseUpOutSide me
  39.   liftUp(me)
  40. end
  41.  
  42. on liftUp me
  43.   pPressed = 0
  44.   hidePopup(me)
  45.   select(me)
  46. end
  47.  
  48. on exitFrame me
  49.   if pPressed then
  50.     showPopup(me)
  51.     s = the rollover
  52.     if pSpriteList.getOne(s) then
  53.       sprite(s).member = member(pMemberList.getProp(s)).number + 1
  54.     end if
  55.   end if
  56. end
  57.  
  58. on hidePopup me
  59.   repeat with i = 1 to pSpriteList.count
  60.     set the memberNum of sprite pMySprite to pMyMember
  61.     sprite(pSpriteList[i]).memberNum = 0
  62.   end repeat
  63. end
  64.  
  65. on showPopup me
  66.   repeat with i in pSpriteList
  67.     set the memberNum of sprite pMySprite to pMyMember2
  68.     sprite(i).member = member(pMemberList.getProp(i))
  69.   end repeat
  70. end
  71.  
  72. on select me
  73.   s = the rollover
  74.   if pSpriteList.getOne(s) then
  75.     set the memberNum of sprite pMySprite to member(pMemberList.getProp(s))
  76.     pMyMember = pMySprite.memberNum
  77.     pMyMember2 = pMyMember - 1
  78.     pMyMember3 = pMyMember + 1
  79.     if pMemberList.getProp(s).word[3] = "1" then
  80.       gClonerMask = 0
  81.       gClonerSize = 1
  82.     else
  83.       gClonerSize = integer(pMemberList.getProp(s).word[3])
  84.       if pMemberList.getProp(s).word[1] = "sq" then
  85.         gClonerShape = #rect
  86.         gClonerMask = pMemberList.getProp(s).word[1] && "br" && pMemberList.getProp(s).word[3]
  87.       else
  88.         if pMemberList.getProp(s).word[1] = "rnd" then
  89.           gClonerShape = #oval
  90.           gClonerMask = pMemberList.getProp(s).word[1] && "br" && pMemberList.getProp(s).word[3]
  91.         else
  92.           if pMemberList.getProp(s).word[1] = "soft" then
  93.             gClonerShape = #oval
  94.             if gCast = "32bit" then
  95.               gClonerMask = pMemberList.getProp(s).word[1] && "brgb" && pMemberList.getProp(s).word[3]
  96.             else
  97.               gClonerMask = pMemberList.getProp(s).word[1] && "br" && pMemberList.getProp(s).word[3]
  98.             end if
  99.           end if
  100.         end if
  101.       end if
  102.     end if
  103.     sendSprite(104, #turnMeOn)
  104.   end if
  105. end
  106.  
  107. on getPropertyDescriptionList me
  108.   list = [:]
  109.   addProp(list, #pSpriteList, [#comment: "Sprite List", #format: #list, #default: []])
  110.   return list
  111. end
  112.